package com.xncoding.valid.Aware;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;

public class MyBeanFactoryAwareBean implements BeanFactoryAware {

    private BeanFactory beanFactory;

    @Override
    public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
        this.beanFactory = beanFactory;
        // 这里你可以做一些初始化的工作，比如预加载其他bean，或者检查bean的依赖关系等
        System.out.println("BeanFactory 注入成功，可以在这里获取其他bean...");
    }

    // 你可以提供一个方法来获取BeanFactory，但通常不建议这样做，因为它可能会破坏封装性
    public BeanFactory getBeanFactory() {
        return beanFactory;
    }

    // 你可以添加其他业务方法...

}